Direct Access Storage Devices (DASDs) continue to be the systems of choice for storing large amount of persistent data in enterprise data centers due to their high capacity, performance and relatively low cost. Examples of common DASD-based data storage systems include the IBM System Storage DS8000® products offered by International Business Machines corporation of Armonk, N.Y.
Data in storage systems are typically stored in organization units referred to as storage volumes. A Direct Access Storage Device maintains a volume map for each volume that contains information on sets of data stored on the volume. The volume map is used by an operating system to manage user data and free space on the device. Before user data can be stored on a storage device, an initializing operation must be performed to prepare a storage volume on the device for accepting user data. For example, in the IBM z/OS® operating system, a storage volume may be initialized using the Device Support Facility program “ICKDSF” to write a volume label record and a Volume Table of Contents (VTOC), which make up the volume map of the volume. A pointer to the Volume Table of Contents is maintained within the volume label record. User data on a volume is stored in data sets and pointers to these data sets are maintained in records of the Volume Table of Contents. These records are called Data Set Control Blocks (DSCBs). In most cases, the volume has a VTOC index that has pointers to the DSCB records in the Volume Table of Contents for improved performance.
A subsequent re-initialization of the storage volume typically rewrites the volume label record, the Volume Table of Contents, and the VTOC index. This destroys the pointers to any existing data sets on the volume and as a result, access to user data is lost. Due to human error, a wrong storage volume might be chosen for re-initialization, resulting in the destruction of an existing Volume Table of Contents and the loss of valuable user data. An inadvertent re-initialization of the wrong volume is an infrequent event; however, when it does occur, the results can be catastrophic depending on the contents of the volume.
If a user determines that the re-initialization of a volume was done in error, the user has no immediate way to recover user data. The lost data can only be recovered if it had been backed up to some other media, such as another storage volume or tape storage, prior to the re-initialization. No simpler solutions for recovering the lost data are currently available. Backing up all user data to some other media, however, is not only time-consuming but also requires the temporary use of some other media that may or may not be readily available at the time the re-initialization is performed.
From the foregoing, there still exists a need for an improved system and process for preserving an existing volume map in a data storage system when the a storage volume is re-initialized to allow recovery of previously stored data.